Non-Model-Based Algorithm Portfolios for SAT
نویسندگان
چکیده
When tackling a computationally challenging combinatorial problem, one often observes that some solution approaches work well on some instances, while other approaches work better on other instances. This observation has given rise to the idea of building algorithm portfolios [5]. Leyton-Brown et al. [1], for instance, proposed to select one of the algorithms in the portfolio based on some features of the instance to be solved. This approach has been blessed with tremendous success in the past. Especially in SAT, the SATzilla portfolios [7] have performed extremely well in past SAT Competitions [6]. We investigate alternate ways of building algorithm portfolios that differ substantially from the way SATzilla assembles a portfolio. The key idea behind SATzilla is to train a runtime prediction model for each constituent solver, based on a number of well-engineered features of SAT instances. Given a new instance, SATzilla predicts the runtime of each candidate solver based on instance features and the trained models, and chooses the solver that is predicted to perform the best. In contrast, we consider non-model-based machine learning techniques such as simple k-nearest-neighbor (k-NN) classification to determine which solver to use to tackle a given instance. Our motivation stems from two observations: (a) accurately predicting the runtime of sophisticated SAT solvers is a very challenging task; indeed, the runtime predictor underlying SATzilla can be even orders of magnitude off from the true runtime; and (b) while fast and accurate runtime prediction is certainly sufficient for building a solver portfolio, it is by no means necessary. In fact, it would suffice entirely if we could predict the fastest solver without having any knowledge of how long it will actually take to solve the given instance. This idea has found success in fields adjoining SAT, for example in portfolios for the quantified Boolean formula (QBF) problem [4], for general constraint satisfaction problems (CSPs) [3], and to some extent even for SAT itself [2]. Our portfolio works as follows. In the learning phase, we are given a pool T of training instances, a function that provides features for any given problem instance (we use the 48 core SATzilla features here), a set S of constituent solvers forming the portfolio, and a timeout t. We compute the runtime (with cutoff t) for all solvers on all instances as well as normalization parameters so that all features for all instances in the training set populate the interval [0, 1]. At runtime, given a new instance I, we compute its features, normalize them, and compute the set TI ⊂ T consisting of k training instances closest to I in terms of Euclidean distance. Then, for each solver S ∈ S, we compute the
منابع مشابه
Algorithm Portfolios Based on Cost-Sensitive Hierarchical Clustering
Different solution approaches for combinatorial problems often exhibit incomparable performance that depends on the concrete problem instance to be solved. Algorithm portfolios aim to combine the strengths of multiple algorithmic approaches by training a classifier that selects or schedules solvers dependent on the given instance. We devise a new classifier that selects solvers based on a cost-...
متن کاملEvaluating Component Solver Contributions to Portfolio-Based Algorithm Selectors
Portfolio-based methods exploit the complementary strengths of a set of algorithms and—as evidenced in recent competitions—represent the state of the art for solving many NP-hard problems, including SAT. In this work, we argue that a state-of-the-art method for constructing portfolio-based algorithm selectors, SATzilla, also gives rise to an automated method for quantifying the importance of ea...
متن کاملTransformation-based Feature Computation for Algorithm Portfolios
Instance-specific algorithm configuration and algorithm portfolios have been shown to offer significant improvements over single algorithm approaches in a variety of application domains. In the sat and csp domains algorithm portfolios have consistently dominated the main competitions in these fields for the past five years. For a portfolio approach to be effective there are two crucial conditio...
متن کاملBoosting Sequential Solver Portfolios: Knowledge Sharing and Accuracy Prediction
Sequential algorithm portfolios for satisfiability testing (SAT), such as SATzilla and 3S, have enjoyed much success in the last decade. By leveraging the differing strengths of individual SAT solvers, portfolios employing older solvers have often fared as well or better than newly designed ones, in several categories of the annual SAT Competitions and Races. We propose two simple yet powerful ...
متن کاملIncreasing the Robustness of SAT Solving with Machine Learning Techniques
Algorithm portfolios have become very popular in SAT competitions. The portfolio together with a good algorithm selection model can solve more instances than the best algorithm. For the algorithm selection task normally machine learning techniques are used based on features computed from the SAT instances. When the algorithm selection model is tested on instances that were part of the training ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2011